import java.util.ArrayList;
import java.util.Collections;
//https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035?tpId=13&tags=&title=&difficulty=0&judgeStatus=0&rp=0
//描述
//        输入一个链表的头节点，按链表从尾到头的顺序返回每个节点的值（用数组返回）。
//        示例1
//        输入：
//        {1,2,3}
//        复制
//        返回值：
//        [3,2,1]
//        复制
//        示例2
//        输入：
//        {67,0,24,58}
//        复制
//        返回值：
//        [58,24,0,67]
public class Solution7 {
    public static ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
        ArrayList<Integer> list = new ArrayList<>();
        while (listNode != null){
            list.add(listNode.val);
            listNode = listNode.next;
        }
        Collections.reverse(list);
        return list;
    }
    public static ArrayList<Integer> printListFromTailToHead1(ListNode listNode) {
        ArrayList<Integer> list = new ArrayList<>();
        while (listNode != null){
            list.add(0,listNode.val);//直接从头插入
            listNode = listNode.next;
        }
//        Collections.reverse(list);
        return list;
    }
    public static void main(String[] args) {

    }
}
